ENH: Switch to latest version of SuperElastix/elastix (using ITK 5.1.1)#58
Conversation
Thanks Dženan. Apparently there's still an OpenCL issue in SuperElastix/elastix to be fixed:
I'll have a look! |
c8e042b to
4bd46e4
Compare
|
@dzenanz @thewtex My pull request still appears to have some link errors. Which seems to be related to the fact that the SuperElastix/elastix project now distinguished between two CMake targets: elastix_exe and elastix_lib (as I committed with SuperElastix/elastix@3944a13 ). When an application wants to link to the elastix library, it must now specify "elastix_lib", instead of just "elastix". Now it appears that "${Elastix-Test_LIBRARIES}" should be adjusted to specify "elastix_lib" instead of just "elastix", for this ITKElastix/test/CMakeLists.txt Line 7 in 0194a64 Can you please tell me how to properly adjust "${Elastix-Test_LIBRARIES}"? I think it must evaluate to "elastix_lib;transformix_lib;ITKMetaIO;ITKTestKernel" |
|
Since this is set, this might be sufficient: list(APPEND Elastix-Test_LIBRARIES elastix_lib transformix_lib)
CreateTestDriver(Elastix "${Elastix-Test_LIBRARIES}" "${ElastixTests}" )I looked around the code, and don't see how |
4bd46e4 to
ff8683f
Compare
|
@dzenanz Thanks for looking into this issue regarding those link errors. I think it is fixed now, by doing I'm currently looking into
Please let me know if you have a clue! Note that 'itkOpenCLContext.h' is in Elastix, at https://github.com/SuperElastix/elastix/blob/develop/Common/OpenCL/ITKimprovements/itkOpenCLContext.h |
|
Clue:
|
ff8683f to
874180f
Compare
Moved the `#include "itkOpenCLContext.h"` from elxElastixMain.h to elxElastixMain.cxx and elxTransformixMain.cxx, hoping to ease fixing the error: > /work/_skbuild/linux-x86_64-3.5/cmake-build/_deps/elx-src/Core/Kernel/elxElastixMain.h:33:10: fatal error: 'itkOpenCLContext.h' file not found at https://github.com/InsightSoftwareConsortium/ITKElastix/pull/58/checks?check_run_id=1096122268#step:4:2894 (Pull request InsightSoftwareConsortium/ITKElastix#58 "ENH: Switch to latest version of SuperElastix/elastix (using ITK 5.1.1)")
Moved the `#include "itkOpenCLContext.h"` from elxElastixMain.h to elxElastixMain.cxx and elxTransformixMain.cxx, hoping to ease fixing the error: > /work/_skbuild/linux-x86_64-3.5/cmake-build/_deps/elx-src/Core/Kernel/elxElastixMain.h:33:10: fatal error: 'itkOpenCLContext.h' file not found at https://github.com/InsightSoftwareConsortium/ITKElastix/pull/58/checks?check_run_id=1096122268#step:4:2894 (Pull request InsightSoftwareConsortium/ITKElastix#58 "ENH: Switch to latest version of SuperElastix/elastix (using ITK 5.1.1)")
874180f to
58b0de1
Compare
Removed obsolete `elastix::BaseComponent::InitializeElastixLibrary()` calls, as Elastix is now initialized as a library by default: "ENH: Replace InitializeElastixLibrary() by InitializeElastixExecutable()" SuperElastix/elastix#248 SuperElastix/elastix@ef64fb2 Adjusted CMake `Elastix_LIBRARIES`, as the Elastix library CMake targets are now named elastix_lib and transformix_lib: "ENH: Allow building exe and lib of elastix and transformix together" SuperElastix/elastix#232 SuperElastix/elastix@3944a13
58b0de1 to
55c953e
Compare
|
@dzenanz Thanks but why did you merge already? It was still in draft status, and it still has failures from build-test-cxx (ubuntu-18.04)! |
|
I accidentally pushed to all repositories instead of pulling from all repositories. |
|
I was searching for this PR right now! |
|
I think you will have to create a new PR. Reusing the same branch in your fork is fine. Sorry for this 😢 |
|
Then what is the current status? Is it merged now? I don't see it being merged at https://github.com/InsightSoftwareConsortium/ITKElastix/commits/master |
|
I quickly realized my mistake, and put |
|
Please reference this PR in the new PR, in order to keep discussion history. |
So it's a GitHub bug that it doesn't allow reopening the PR! 😸 |
No description provided.